# Makefile for SM4 Encryption Project - Generate only 'test' executable  

# 编译器  
CC = gcc  

# 编译选项  
CFLAGS = -Wall -Wextra -O2 -g  

# 目标可执行文件  
TARGET = test  

# 源文件目录  
SRC_DIR = .  

# 源文件  
SRCS = $(SRC_DIR)/sm4.c $(SRC_DIR)/sm4check.c $(SRC_DIR)/test.c  

# 头文件  
HEADERS = $(SRC_DIR)/sm4.h  

# 生成的对象文件  
OBJS = sm4.o sm4check.o test.o  

# 默认目标  
all: $(TARGET)  

# 链接目标  
$(TARGET): $(OBJS)  
	$(CC) $(CFLAGS) -o $@ $^  

# 生成对象文件  
%.o: %.c $(HEADERS)  
	$(CC) $(CFLAGS) -c $< -o $@  

# 清理生成的对象文件和可执行文件  
clean:  
	rm -f $(OBJS) $(TARGET)  

# 伪目标  
.PHONY: all clean
